package cn.eeepay.framework.service;

import cn.eeepay.framework.db.pagination.Page;
import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.util.List;
import java.util.Map;

/**
 * 集群中收单商户service
 * 
 * @author junhu
 *
 */
public interface RouterOrgService {

	/**
	 * 统计查询结果条数
	 *
	 * @param jsonMap	查询条件
	 * @return	查询结果条数
	 */
	long selectAllInfoRecordInfoCount(Map<String, Object> jsonMap);

	/**
	 * 异步导出
	 *
	 * @param userName
	 * @param md5Key
	 * @param param
	 * @param session
	 */
	void syncExport(String userName, String md5Key, String param, HttpSession session);


	/**
	 * 实时导出
	 *
	 * @param userName
	 * @param md5Key
	 * @param param
	 * @param session
	 * @param response
	 * @return
	 */
	Boolean export(String userName, String md5Key, String param, HttpSession session, HttpServletResponse response);


	List<Map> listRouterAcqMerchantByCon(Map<String, Object> param, Page<Map> page);

	int deleteRouterAcqMerchantById(Long id);

	int updateAcqMerchantQuota(Map<String, Object> param);

	//集群中收单商户导出  tgh
	List<Map<String,Object>> selecrAllInfoRecordInfo(Map<String, Object> jsonMap);

    Map<String,Object> routerOrgBatchDelete(MultipartFile file) throws Exception;

	int selectAcqMerCount(Integer groupCode);

	List<Map<String, Object>> deleteBatchCount(List<Map> list);

	List<Map<String, Object>> deleteImportDelCount(String delNo);

	int deleteImportDelBatch(String delNo);

	int deleteAcqMerImportDel(String delNo);
}
